package com.yudean.esb.rest;

import javax.jws.WebService;
import javax.ws.rs.FormParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

/**
 * 通过WEB的方式上传表单数据
 *
 * @author DL<duanlei#gdyd.com>
 */
@WebService
public interface PutService {

    /**
     * 处理第三方系统推送的数据内容s
     *
     * @param serviceID     服务ID
     * @param token         安全验证码
     * @param transactionID 事务ID
     * @param pkg           当前包数
     * @param totalPackage  总共报数
     * @param rollback      是否回滚
     * @param forceReplace  包重复时强制替换
     * @param data          数据内容
     * @return
     */

    @POST
    @Path("")
    @Produces(MediaType.TEXT_PLAIN)
    String put(
            @FormParam("serviceID") String serviceID,
            @FormParam("token") String token,
            @FormParam("transactionID") String transactionID,
            @FormParam("package") String pkg,
            @FormParam("totalPackage") String totalPackage,
            @FormParam("rollback") String rollback,
            @FormParam("forceReplace") String forceReplace,
            @FormParam("data") String data
    ) throws Exception;

    @POST
    @Path("/file")
    String upload();
}
